#if !defined( DEBUG_SWITCH_H_INCLUDED )
#define DEBUG_SWITCH_H_INCLUDED

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#if defined( NDEBUG )

#define DEBUG_SWITCH( debug_expr, release_expr ) ( release_expr )
#define DEBUG_EXPR( expr ) static_cast< void >( 0 )

#else // defined( NDEBUG )

#define DEBUG_SWITCH( debug_expr, release_expr ) ( debug_expr )
#define DEBUG_EXPR( expr ) ( expr )

#endif // defined( NDEBUG )

#endif // !defined( DEBUG_SWITCH_H_INCLUDED )
